import Mock from "mockjs";

// 创建数据
let { data } = Mock.mock({
  "data|120": [
    {
      "id|+1": 100001,
      // 姓名
      name: "@cname",
      // 性别
      "sexy|1": ["男", "女"],
      // 年龄
      "age|8-18": 8,
      // 缴费金额
      money: "2980元",
      // 入学日期
      "classTime|1": [
        "2022年10月15日",
        "2022年03月12日",
        "2022年06月23日",
        "2022年10月08日",
      ],
      //联系方式
      "tel|13000000000-18999999999": 13000000000,
      // 报名课程
      "course|1": ["初级装饰画", "初级素描", "初级创意美术"],
      //任课老师
      teacher: "@cname",
    },
  ],
});

// 列表接口，分页，搜索
Mock.mock("/api/stus/list", "post", (options) => {
  const { pageSize, currentPage, search } = JSON.parse(options.body);
  if (pageSize && currentPage) {
    let result;
    let count = 0;
    if (search) {
      result = data
        .filter((item: any) => item.name === search)
        .slice((currentPage - 1) * pageSize, currentPage * pageSize);
      count = data.filter((item: any) => item.name === search).length;
    } else {
      result = data.slice((currentPage - 1) * pageSize, currentPage * pageSize);
      count = data.length;
    }
    return {
      status: 0,
      result: result,
      count: count,
    };
  } else {
    return {
      status: 1,
      result: "参数错误",
    };
  }
});

// // 删除接口
Mock.mock("/api/stus/del", "post", (options) => {
  const { id } = JSON.parse(options.body);
  if (id) {
    data = data.filter((item: any) => item.id !== id);
    return {
      status: 0,
      msg: "删除成功",
    };
  } else {
    return {
      status: 1,
      msg: "参数错误",
    };
  }
});

// 下载接口
Mock.mock("/api/stus/export", "post", () => {
  return {
    status: 0,
    result: data,
  };
});

export default Mock;
